Micron Document
██████╗ ███████╗████████╗██╗██████╗ ███████╗██████╗ ██╗ █████╗
██╔══██╗██╔════╝╚══██╔══╝██║██╔══██╗██╔════╝██╔══██╗██║██╔══██╗
██████╔╝█████╗ ██║ ██║██████╔╝█████╗ ██║ ██║██║███████║
██╔══██╗██╔══╝ ██║ ██║██╔═══╝ ██╔══╝ ██║ ██║██║██╔══██║
██║ ██║███████╗ ██║ ██║██║ ███████╗██████╔╝██║██║ ██║
╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚═╝ ╚══════╝╚═════╝ ╚═╝╚═╝ ╚═╝


🬧 The NomadNet Encyclopedia | Archives | Info
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b

🔍 Search

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

Kerberos
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
In mwcainformatica e mwcqtelecomunicazioni mwcgKerberos è un mwcwprotocollo di rete per l'mwdaautenticazione forte che permette a diversi mwdqterminali di mwdgcomunicare su una mwdwrete informatica insicura provando la propria mweaidentità mediante l'utilizzo di tecniche di mweqcrittografia simmetrica. Kerberos previene mwegattacchi quali l'mwewintercettazione e i mwfareplay attack ed assicura l'mwfqintegrità dei dati. I suoi progettisti mirarono soprattutto ad un modello mwfgclient-server, e fornisce una mutua autenticazione cioè sia l'mwfwutente sia il mwgafornitore del servizio possono verificare l'identità dell'altro.

Contents

Storia

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Storia

Il mwhaMassachusetts Institute of Technology (MIT) sviluppò Kerberos per proteggere i servizi di rete forniti dal Project Athena. Il protocollo fu battezzato come il personaggio mitologico mwhgCerbero, che nella mwhwmitologia greca era il cane a mwiatre teste posto a guardia dell'mwiqAde. Ci sono diverse versioni del protocollo; le versioni dalla 1 alla 3 furono utilizzate solo all'interno del MIT.

Steve Miller e Clifford Neuman, i principali sviluppatori di Kerberos versione 4, pubblicarono questa versione alla fine degli anni Ottanta, anche se era stata sviluppata principalmente per il Project Athena.

La versione 5, progettata da John Kohl e Clifford Neuman, venne formalizzata nella mwjaRFC 1510 nel mwjq1993 (resa obsoleta dalla mwjgRFC 4120 nel mwjw2005), con l'intenzione di risolvere i limiti e i problemi di sicurezza della versione 4.

Il mwkqMIT mette a disposizione una implementazione di Kerberos libera, sotto una licenza simile alla mwkgBSD.

Le autorità degli mwlaUSA classificarono Kerberos come arma e ne vietarono l'esportazione poiché utilizzava l'algoritmo di crittazione mwlwDES (con chiavi da 56 mwmabit). Una implementazione di Kerberos non statunitense, mwmqKTH-KRB sviluppata in mwmgSvezia, rese il sistema disponibile anche al di fuori degli Stati Uniti, prima che questi cambiassero la propria legge sull'esportazione degli algoritmi crittografici (attorno al mwmw2000). L'implementazione svedese del protocollo era basata su una versione di Kerberos detta eBones. eBones era basata sulla versione MIT Bones (in pratica una versione di Kerberos priva delle funzioni crittografiche e delle loro chiamate) ricavata da Kerberos 4 patchlevel 9. L'australiano Eric Young, autore di diverse librerie crittografiche, reinserì le chiamate alle funzioni crittografiche utilizzando la propria libreria mwnalibdes. Questa versione limitata di Kerberos fu chiamata eBones. Una implementazione della versione 5 di Kerberos, mwnqHeimdal, fu rilasciata essenzialmente dallo stesso gruppo che creò KTH-KRB.

mwnwWindows 2000, mwoaWindows XP e mwoqWindows Server 2003 usano una variante di Kerberos come sistema predefinito di autenticazione. Alcune aggiunte di mwogMicrosoft a Kerberos sono documentate nella mwowRFC 3244 "mwpaMicrosoft Windows 2000 Kerberos Change Password and Set Password Protocols" (trad.: "Protocolli Kerberos di impostazione password e cambio password in Microsoft Windows 2000"). Anche mwpqmacOS di mwpgApple utilizza Kerberos sia nella versione client sia in quella server.

Nel 2005 il gruppo di lavoro su Kerberos dello mwqaIETF ha aggiornato le specifiche mwqq. Recenti aggiornamenti includono:

• "Encryption and Checksum Specifications" (trad.: "Specifiche di crittazione e calcolo mwrachecksum") (mwrqRFC 3961)
• "mwrwAdvanced Encryption Standard (AES) Encryption for Kerberos 5" (trad.: "Crittazione con mwsaAES in Kerberos 5") (mwsqRFC 3962),
• Una nuova edizione delle specifiche di Kerberos 5 "The Kerberos Network Authentication Service (V5)" (trad.: "Servizio Kerberos per l'Autenticazione su Reti") (mwswRFC 4120). Questa versione rende obsoleta la mwtaRFC 1510, chiarifica alcuni aspetti del protocollo e il suo utilizzo in modo più dettagliato e chiaro,
• Una nuova edizione delle specifiche per GSS-API (mwtwRFC 4121)

Descrizione

Kerberos si basa sul mwugprotocollo di Needham-Schroeder. Utilizza una terza parte affidabile per centralizzare la distribuzione delle chiavi detta mwuwKey Distribution Center (KDC), che consiste di due parti separate logicamente: l'mwvaAuthentication Server (AS) e il mwvqTicket Granting Server (TGS). Kerberos funziona utilizzando dei "biglietti" (detti mwvgticket) che servono per provare l'identità degli utenti.

L'AS mantiene un database delle chiavi segrete; ogni entità sulla rete — che sia un client o un server — condivide la chiave segreta solo con l'AS. La conoscenza di questa chiave serve per provare l'identità di un'entità. Per comunicazioni tra due entità, Kerberos genera una chiave di sessione, che può essere utilizzata dai due terminali per comunicare.

Il protocollo

Il protocollo può essere definito come segue utilizzando la notazione per protocolli di sicurezza, dove mwwwAlice (mwxaA) si autentica presso mwxqBob (mwxgB) usando il server mwxwS:

mwyq A → → S : A , B {\displaystyle A\rightarrow S:A,B}

mwyw S → → A : { T S , L , K A B , B , { T S , L , K A B , A } K B S } K A S {\displaystyle S\rightarrow A:\{T_{S},L,K_{AB},B,\{T_{S},L,K_{AB},A\}_{K_{BS}}\}_{K_{AS}}}

mwzq A → → B : { T S , L , K A B , A } K B S , { A , T A } K A B {\displaystyle A\rightarrow B:\{T_{S},L,K_{AB},A\}_{K_{BS}},\{A,T_{A}\}_{K_{AB}}}

mwzw B → → A : { T A + 1 } K A B {\displaystyle B\rightarrow A:\{T_{A}+1\}_{K_{AB}}}

La sicurezza del protocollo si basa fortemente sui timestamp T e sui tempi di vita L come indicatori affidabili della creazione recente della comunicazione per evitare mwaqreplay attack (vedi logica BAN).

È importante notare come il server S stia sia come Authentication Service (AS) sia come Ticket Granting Service (TGS).

User:Ippatsu finire di tradurre: Nell'operazione <math&#x3E;\{T_S, L, K_{AB}, B, \{T_S, L, K_{AB}, A\}_{K_{BS}}\}_{K_{AS}}</math&#x3E;, <math&#x3E;K_{AB}</math&#x3E; è la chiave di sessione tra A e B, <math&#x3E;\{T_S, L, K_{AB}, A\}_{K_{BS}}</math&#x3E; è il ticket tra... In relation to the following Kerberos operation, it is helpful to note that the server S here stands for both authentication service (AS), and ticket granting service (TGS). In <math&#x3E;\{T_S, L, K_{AB}, B, \{T_S, L, K_{AB}, A\}_{K_{BS}}\}_{K_{AS}}</math&#x3E;, <math&#x3E;K_{AB}</math&#x3E; stands for the session key between A and B, <math&#x3E;\{T_S, L, K_{AB}, A\}_{K_{BS}}</math&#x3E; is the client to server ticket, <math&#x3E;\{A, T_A\}_{K_{AB}}</math&#x3E; is the authenticator, and <math&#x3E;\{T_A + 1\}_{K_{AB}}</math&#x3E; confirms B's true identity and its recognition of A. This is required for mutual authentication.

Operazioni di Kerberos

Quella che segue è una descrizione semplificata del protocollo. Saranno utilizzate le seguenti abbreviazioni: AS = Authentication Server, TGS = Ticket Granting Server, SS = Service Server.

User:Ippatsu Il testo originale della wikipedia inglese riporta User:Cluster created this sentence based on the detailed list below; this, it may be a misinterpretation and may be patently wrong. Cluster was entirely unfamiliar with Kerberos before this article, so... In one sentence: the client authenticates itself to AS, then demonstrates to the TGS that it's authorized to receive a ticket for a service (and receives it), then demonstrates to the SS that it has been approved to receive the service. Ho ricontrollato il tutto e la frase è tutto sommato corretta, ma leggermente imprecisa, ho provveduto a modificarla qui.

In breve: il client si autentica presso AS che gli fornisce un ticket di sessione per accedere a TGS, si autentica presso TGS e riceve il ticket per aprire una sessione di comunicazione con SS.

In dettaglio:

Utente: Autenticazione di base

1. Un utente inserisce username e password sul client.

Client: Autenticazione AS

1. Il client manda un messaggio non criptato all'AS richiedendo i servizi per l'utente. ("L'utente XYZ vorrebbe richiedere dei servizi"). Né la chiave segreta né la password vengono inviate all'AS.
2. L'AS controlla se il client è nel suo database. Se lo è invia due messaggi al client:

• Messaggio A: mweqChiave di sessione client-TGS crittata usando la chiave segreta dell'utente.
• Messaggio B: mwewTicket-Granting Ticket (che include l'identificativo del client, l'indirizzo di rete, il tempo di validità del ticket e la mwfachiave di sessione client-TGS). Il Ticket-Granting Ticket è crittato utilizzando la chiave segreta di TGS.

3. Quando il client riceve i messaggi A e B, decritta il messaggio A ottenendo la mwfgchiave di sessione client-TGS. Questa chiave è utilizzata per le successive comunicazioni con TGS. (Nota: il client non può decrittare il Messaggio B, che è stato crittato con la chiave segreta di TGS). A questo punto il client possiede i mezzi per autenticarsi presso TGS.

Client: Autenticazione TGS

1. Quando richiede dei servizi, il client invia i seguenti due messaggi a TGS:

• Messaggio C: composto dal mwhaTicket-Granting Ticket (mandatogli dal AS nel messaggio B) e dall'identificativo del servizio richiesto
• Messaggio D: autenticatore (mwhgAuthenticator) (che è formato da identificativo del client e timestamp), crittato usando la mwhwchiave di sessione client—TGS.

2. Ricevendo i messaggi C e D, TGS decritta il messaggio C con la propria chiave e dal messaggio estrae la mwiqchiave di sessione client—TGS che utilizza per decrittare il messaggio D (autenticatore). A questo punto invia i seguenti due messaggi al client:

• Messaggio E: mwjaTicket client-server (che include l'identificativo del client, l'indirizzo di rete del client, il periodo di validità e la chiave di sessione client-server) crittato utilizzando la chiave segreta del server che offre il servizio.
• Messaggio F: mwjgChiave di sessione client-server crittato usando la mwjwchiave di sessione client-TGS.

Client: Autenticazione SS

1. Ricevendo i messaggi E e F dal TGS, il client può autenticarsi presso il SS. Il client si connette al SS e invia i seguenti due messaggi:

• Messaggio E: mwlqTicket client-server crittato usando la chiave segreta di SS.
• Messaggio G: un nuovo autenticatore, che include l'identificativo del client, il timestamp ed è crittato usando la mwlwchiave di sessione client-server.

2. Il server decritta il ticket usando la sua chiave segreta e invia il seguente messaggio al client per confermare la propria identità e la volontà di fornire il servizio al client:

• Messaggio H: il timestamp trovato nell'autenticatore incrementato di uno, crittato utilizzando la mwmwchiave di sessione client-server.

3. Il client decritta la conferma usando la mwnqchiave di sessione client-server e controlla che il timestamp sia correttamente aggiornato. Se lo è, il client può considerare affidabile il server e iniziare a effettuare le richieste di servizio.
4. Il server fornisce i servizi al client.

Utilizzi

I seguenti software sono in grado di usare Kerberos per l'autenticazione:

• mwowOpenSSH (con Kerberos 5 o successivo)
• mwpqNFS (a partire dalla versione NFSv4)
• mwpwPAM (con il modulo pam_krb5)
• mwqqSOCKS (a partire da SOCKS5)

Bibliografia

• mwrqKerberos, in Enciclopedia dell'hacker, Sprea International, 2011, pp. 39-43.
• B. Clifford Neuman e Theodore Ts'o, mwrwKerberos: An Authentication Service for Computer Networks, IEEE Communications, 32(9) pp33–38. Settembre 1994. mwsa
• John T. Kohl, B. Clifford Neuman, e Theodore Y. T'so, mwsgThe Evolution of the Kerberos Authentication System. Distributed Open Systems, pp78–94. IEEE Computer Society Press, 1994.

Voci correlate
Altri progetti

Altri progetti

• Wikimedia Commons

• Wikimedia Commons contiene immagini o altri file su Protocollo Kerberos

Collegamenti esterni

• (EN) Sito ufficiale, su web.mit.edu.
• citereffoldoc(EN) Denis Howe, Kerberos, in Free On-line Dictionary of Computing. Disponibile con licenza mwvwGFDL
• mwwqFAQ di Kerberos, su faqs.org.
• mwwwTutorial Kerberos, su zeroshell.net. URL consultato il 10 dicembre 2006 (archiviato dall'url originale il 1º dicembre 2006).
• mwxqKerberos 5 - autenticazione utente, su xoomer.alice.it.